//
// C++ Interface: log
//
// Description:
//
//
// Author: vbb <>, (C) 2008
//
// Copyright: See COPYING file that comes with this distribution
//
//
#ifndef LOG_H
#define LOG_H

#include <time.h>
#include <iostream>
#include <fstream>
#include <string>


using namespace std;


/**
 * Zapisuje logi aplikacji do pliku.
 *
 */


const string FILENAME = "log.txt";
const bool PUT_ON_SCREEN = true;	// czy ma wypisywać informacje na ekran
const bool OVERWRITE_FILE = true;	// false jeśli ma dopisywać informacje do starego pliku log

class Log {
public:

	static Log *instance();

protected:
	Log();
	~Log();


private:

	ofstream fs;
    static Log *inst;

public:
	void info(string s);

	void debug(string s);

	void warn(string s);

	void error(string s);
	void write(string s);

	string getDateTime();

};

#endif
